package com.zycfc.zsf.boot.core.zsfvalue;

import java.util.*;

public class ZsfKeys
{
    private Set<String> keys;
    private String defaultValue;
    
    public ZsfKeys() {
        this.keys = new HashSet<String>();
    }
    
    public Set<String> getKeys() {
        return this.keys;
    }
    
    public String getDefaultValue() {
        return this.defaultValue;
    }
    
    public void setKeys(final Set<String> keys) {
        this.keys = keys;
    }
    
    public void setDefaultValue(final String defaultValue) {
        this.defaultValue = defaultValue;
    }
    
    @Override
    public boolean equals(final Object o) {
        if (o == this) {
            return true;
        }
        if (!(o instanceof ZsfKeys)) {
            return false;
        }
        final ZsfKeys other = (ZsfKeys)o;
        if (!other.canEqual(this)) {
            return false;
        }
        final Object this$keys = this.getKeys();
        final Object other$keys = other.getKeys();
        Label_0065: {
            if (this$keys == null) {
                if (other$keys == null) {
                    break Label_0065;
                }
            }
            else if (this$keys.equals(other$keys)) {
                break Label_0065;
            }
            return false;
        }
        final Object this$defaultValue = this.getDefaultValue();
        final Object other$defaultValue = other.getDefaultValue();
        if (this$defaultValue == null) {
            if (other$defaultValue == null) {
                return true;
            }
        }
        else if (this$defaultValue.equals(other$defaultValue)) {
            return true;
        }
        return false;
    }
    
    protected boolean canEqual(final Object other) {
        return other instanceof ZsfKeys;
    }
    
    @Override
    public int hashCode() {
        final int PRIME = 59;
        int result = 1;
        final Object $keys = this.getKeys();
        result = result * 59 + (($keys == null) ? 43 : $keys.hashCode());
        final Object $defaultValue = this.getDefaultValue();
        result = result * 59 + (($defaultValue == null) ? 43 : $defaultValue.hashCode());
        return result;
    }
    
    @Override
    public String toString() {
        return "ZsfKeys(keys=" + this.getKeys() + ", defaultValue=" + this.getDefaultValue() + ")";
    }
}
